//发送请求
// 这个文件用来书写api接口请求函数文件 以后我们请求获取的数据 每个接口都对应一个函数去发请求
import Ajax from './ajax'
import mockAjax from "@/api/mockAjax";
//请求获取三级分类列表数据的函数
//api接口  /api/product/getBaseCategoryList
//请求是 get
export const reqCategoryList = function () {
    return Ajax({
        url: '/product/getBaseCategoryList',
        method: 'GET'
    })
}
export const reqBannerList = function () {
    return mockAjax({
        url: '/banner',
        method: 'GET'
    })
}
export const reqFloorList = function () {
    return mockAjax({
        url: '/floor',
        method: 'GET'
    })
}
export const reqGoodsListInfo = function (searchParams) {
    return Ajax({
        url: '/list',
        method: 'POST',
        data: searchParams
    })
}
//商品详情
///api/item/{ skuId } 请求方式get
export const reqGoodsDetailInfo = (skuId) => {
    return Ajax({
        url: `/item/${skuId}`,//这里也可以写模板字符串
        method: 'GET',
    })
}
//添加购物车和更新购物车数据
// /api/cart/addToCart/{ skuId }/{ skuNum } 请求方式post
export const reqShopCart = (skuId, skuNum) => {
    return Ajax({
        url: `/cart/addToCart/${skuId}/${skuNum}`,
        method: 'POST'
    })
}
//购物车页面
// 请求地址/api/cart/cartList 请求方式get
export const reqShopCartList = () => {
    return Ajax({
        url: '/cart/cartList ',
        method: 'GET'
    })
}
//修改单个购物车选中状态
//  /api/cart/checkCart/{skuID}/{isChecked}
// GET
export const reqUpdateOneIsChecked = (skuId, isChecked) => {
    return Ajax({
        url: `/cart/checkCart/${skuId}/${isChecked}`,
        method: 'GET'

    })
}
//批量更改购物车的信息 全选
//批量更改购物车选中状态
//api/cart/batchCheckCart/{isChecked}
//post
// isChecked   1或者0                               params参数
// skuIds       要修改的购物车商品的id组成的数组      body参数
export const reqUpdateAllIsChecked = (isChecked, skuIds) => {
    return Ajax({
        url: `/cart/batchCheckCart/${isChecked}`,
        method: 'POST',
        data: skuIds
    })
}
///api/cart/deleteCart/{skuId} 请求方式delete 删除单个的购物车信息
export const reqDeleteShopCart = (skuId) => {
    return Ajax({
        url: `/cart/deleteCart/${skuId}`,
        method: 'DELETE'
    })
}
//删除已选中的购物车信息\
//批量删除购物车
///api/cart/batchDeleteCart
// delete
//skuIds      要删除的购物车商品的id组成的数组      body参数

export const reqDeleteAllShopCart = (skuIds) => {
    return Ajax({
        url: '/cart/batchDeleteCart',
        method: 'DELETE',
        data: skuIds
    })
}

//写接口函数 获取验证码 看接口文档
///api/user/passport/sendCode/{phone}    请求方式get
export const reqCode=(phone)=>{
    return Ajax({
        url:`/user/passport/sendCode/${phone}`,
        method:'GET',
    })
}
///api/user/passport/register 请求方式:POST 携带参数   没写就是请求体参数 phone  password code
//注册接口函数
export const reqRegister=(userInfo)=>{
    return Ajax({
        url:'/user/passport/register',
        method:'POST',
        data:userInfo
    })
}
///api/user/passport/login 请求方式POST 携带请求体参数phone和password
export const reqLogin=(userInfo)=>{
    return Ajax({
        url:'/user/passport/login',
        method:'POST',
        data:userInfo
    })
}
//根据token获取用户信息
//api/user/passport/auth/getUserInfo 请求方式get
export const reqUserInfo=()=>{
    return Ajax({
        url:'/user/passport/auth/getUserInfo',
        method:'GET'
    })
}
//退出登录
///api/user/passport/logout 请求方式get
export const reqLogout=()=>{
    return Ajax({
        url:'/user/passport/logout',
        method:'GET'
    })
}
//获取用户地址信息
//api/user/userAddress/auth/findUserAddressList 请求方式 get
export const reqUserAddressList=()=>{
    return Ajax({
        url:'/user/userAddress/auth/findUserAddressList',
        method:'get'
    })
}

//获取订单交易页信息
///api/order/auth/trade 请求方式get
export const reqTradeInfo=()=>{
    return Ajax({
        url:'/order/auth/trade',
        method:'get'
    })
}
//提交订单

///api/order/auth/submitOrder?tradeNo={tradeNo} 请求方式post
export const reqSubmitOrder=(tradeNo,tradeInfo)=>{
    return Ajax({
        url:`/order/auth/submitOrder?tradeNo=${tradeNo}`,
        method:'post',
        data:tradeInfo
    })
}
//发请求获取订单支付信息
//api/payment/weixin/createNative/{orderId} 请求方式:get     携带参数orderId
export const reqCPayInfo=(orderId)=>{
    return Ajax({
        url:`/payment/weixin/createNative/${orderId} `,
        method:'get',
    })
}
//查询支付状态
//api/payment/weixin/queryPayStatus/{orderId}
export const reqPayStatus=(orderId)=>{
    return Ajax({
        url:`/payment/weixin/queryPayStatus/${orderId}`,
        method:'get'
    })
}
//11. 获取我的订单列表
// /api/order/auth/{page}/{limit} 请求方式 GET page那一页 limit每页限制多少个
export const reqOrderList=(page,limit)=>{
    return Ajax({
        url:`/order/auth/${page}/${limit}`,
        method:'get'
    })
}








//测试接口 调用函数 然后再main.js中引入此文件
// reqCategoryList()
/*
reqGoodsListInfo({})*/
